/**
 *
 */
if(typeof (module) !="undefined"){
    module.exports = FStylizeShadow; //


    var FEffectBase = require('./FEffectBase');
    var FStylizeBase = require('./FStylizeBase');
    var FColor = require('./FColor');
}



function FStylizeShadow()
{
    FStylizeBase.call(this);
    this.type = FEffectBase.prototype.TYPE_STYLIZE_SHADOW;

    this.d = 0; // distance 阴影的偏移距离，以像素为单位。
    this.an = 0; //  angle 阴影的角度，0 到 360 度（浮点）。
    this.clr =0; //  阴影颜色，采用十六进制格式 0xRRGGBB。默认值为 0x000000。
    this.al =1.0; //  alpha 阴影颜 色的 Alpha 透明度值。有效值为 0.0 到 1.0。例如，0.25 设置透明度值为 25%。
    this.bx =0; //  blurX 水平模糊量。有效值为 0 到 255.0（浮点）。
    this.by =0; //  blurY 垂直模糊量。有效值为 0 到 255.0（浮点）。
}
FStylizeShadow.prototype = new FStylizeBase();




// 从json对象中解析
FStylizeShadow.prototype.fromJson = function(jsonObj, versionId){
    FStylizeBase.prototype.fromJson.call(this,jsonObj,versionId);
    
    this.d = jsonObj.d;
    this.an = jsonObj.an;
    this.clr = new FColor(); this.clr.fromJson(jsonObj.clr, versionId);
    this.al = jsonObj.al;
    this.bx = jsonObj.bx;
    this.by = jsonObj.by;
}

// 转成json字符串
FStylizeShadow.prototype.toJson = function(){
    // 去掉父json字符串的头尾
    var superJson = FStylizeBase.prototype.toJson.call(this);
    superJson = superJson.substr(1,superJson.length-2);

    var ret = '{';
    ret +=superJson;

    // d
    ret +=',';
    ret += '"d":';
    ret += this.d;
    // an
    ret +=',';
    ret += '"an":';
    ret += this.an;
    // clr
    ret +=',';
    ret += '"clr":';
    ret += this.clr.toJson();
    // al
    ret +=',';
    ret += '"al":';
    ret += this.al;
    // bx
    ret +=',';
    ret += '"bx":';
    ret += this.bx;
    // by
    ret +=',';
    ret += '"by":';
    ret += this.by;


    ret+='}';
    return ret;
}
